Wichtig !!! N E U E S ... Inhalt  Hotline Stichwortverzeichnis

Omikron Basic 6 Native für PowerMac
 Version 6.13 vom 16.2.1998
 Handbuch
Kapitel 8
Die Extension-Library

Inhalt

Einleitung
Die Befehle im einzelnen
Funktionen zur Umwandlung von Fließkommazahlen in Strings und umgekehrt
Einleitung

Die Extension-Library erweitert den Befehlssatz des Omikron Basics um solche Anweisungen, wie sie für die Erstellung von Programmen für das MacOS notwendig oder zumindest sehr nützlich, im Standard-Befehlssatz aber nicht enthalten sind. Um die Extension-Library zu benutzen, müssen Sie diese im Editor mit dem Menüpunkt 'LIBRARY zuladen' in Ihr Programm einbinden. Vergessen Sie nicht, am Anfang Ihres Programms ein 'Extension_Init' und am Ende ein 'Extension_Exit' aufzurufen.

Die Befehle im einzelnen


Extension_Init:
Vor der Benutzung der anderen Befehle muß diese Prozedur einmal aufgerufen werden.

Extension_Exit:
Rufen Sie diese Prozedur auf, wenn Sie keine Funktionen der Library mehr benutzen möchten.

Error_Messages F:
Wenn in Ihrem Programm zur Laufzeit ein Fehler auftritt (z.B. wenn Sie versuchen, eine Datei zu öffnen, die gar nicht existiert), dann wird normalerweise vom Omikron Basic eine Fehlermeldung in einer Alertbox ausgegeben. Dieses Verhalten ist während der Programmentwicklungszeit sicherlich sehr nützlich, wirkt bei einem fertigen Programm aber eher störend. Darum können Sie mit dieser Prozedur die Fehlermeldungen abschalten.

F=0 : Fehlermeldungen aus, sonst Fehlermeldungen ein.

Wenn allerdings ein fataler Fehler auftritt (z.B. zu wenig BASIC-Speicher vorhanden), wodurch eine Programmfortsetzung unmöglich wird, dann gibt Omikron Basic in jedem Fall eine Meldung aus und beendet das Programm.

Set_Help(Tc) definiert, welche Taste für ON HELP GOSUB verwendet werden soll. Für Tc muß der Tastaturcode eingesetzt werden. Die Voreinstellung ist $69, was der Funktionstaste 13 entspricht. Eine Übersicht über die Tastaturcodes finden Sie in "Inside MacIntosh, Toolbox Essentials" und im Anhang 'Virtual Key Codes'.

Set_Sleep(S) setzt den Sleep-Parameter, den Omikron Basic bei jedem WaitNextEvent-Aufruf an das MacOS übergibt (siehe auch 'Das Omikron Basic Ausgabefenster' und 'Neue Compilersteuerwörter'). Der Sleep-Parameter bestimmt, wieviel Rechenzeit anderen Programmen überlassen wird. Der Defaultwert ist 1, eine größere Zahl verlangsamt Ihr Programm, gibt dafür aber anderen parallel laufenden Programmen mehr Prozessorzeit.


Set_Tab(T) setzt den Tabulator, der für PRINT und LPRINT benutzt wird. Die Voreinstellung ist 8.

Fill_Input_Buffer(F$,C) : Der Inputbuffer wird mit dem String F$ geladen, der Cursor wird an die Position C ab Inputbeginn gesetzt. Durch diesen Befehl ist es möglich, bei Inputanweisungen schon einen Eingabewert vorzugeben, der dann gegebenenfalls nur noch mit RETURN bestätigt werden muß. Da der Inputbuffer auch noch für andere Zwecke benutzt wird, sollte diese Prozedur immer unmittelbar vor dem eigentlichen INPUT-Befehl aufgerufen werden.

FN Get_Created_Dirid : Wenn Sie mit MKDIR eine neue Directory erzeugen, so können Sie die Identifikationsnummer dieser Direktory erhalten, indem Sie gleich danach diese Funktion aufrufen.

Get_Def_Dir(R Vrefnum%,R Dirid,R Volname$,R Errnum) : Diese Prozedur liefert die Volume-Referenznummer, die Direktory-Identifikationsnummer und den Volumenamen des aktuellen Pfades zurück. Errnum enhält gegebenenfalls eine Fehlernummer.

Get_Cur_Dir(R Vrefnum,R Dirid) liefert die Volume-Referenznummer und die Directory-Identifikationsnummer des aktuellen Pfades zurück.

FN Get_Vrefnum(Fsspec$) gibt die Volume-Referenznummer zurück, wenn ein File-Specificationrecord übergeben wird.

FN Get_Dirid(Fsspec$) gibt die Direktory-Identifikationsnummer zurück, wenn ein File-Specificationrecord übergeben wird.

FN Get_Filename$(Fsspec$) gibt den Filenamen zurück, wenn ein File-Specificationrecord übergeben wird.

FN Get_Font_Number(Name$) gibt die Nummer eines Fonts zurück, wenn Sie dessen Namen (z.B. Monaco, Courier, VT100) der Funktion übergeben.

FN Get_Fsspec$(Vrefnum,Dirid,Filename$) : Wenn Sie dieser Funktion eine Volume-Referenznummer, eine Directory-Identifikationsnummer und einen Filenamen übergeben, so erhalten Sie einen File-Specificationrecord zurück, wie Sie Ihn z.B. für OPEN brauchen. Vrefnum und Dirid können auch Null sein. Dann muß Filename$ aber entweder einen vollständigen Pfad enthalten oder darf nur aus einem Dateinamen bestehen, wobei im letzteren Fall vom aktuellen Pfad ausgegangen wird. Wenn Sie also nur einen Teilpfad übergeben, müssen die Volume-Referenznummer und die Directory-Identifikationsnummer gültig sein.

FN Get_File_Count : Mit dieser Funktion können Sie herausfinden, wieviele Bytes z.B. bei PUT od. GET tatsächlich gelesen bzw. geschrieben wurden.

Set_File_Creator(Creator) : Wenn ein neues File erzeugt wird, z.B. mit OPEN "O", dann wird die zuvor mit dieser Prozedur eingestellte Creator-Identifikationsnummer dem File zugewiesen.

Set_File_Typ(Filetyp) : Wenn ein neues File erzeugt wird, z.B. mit OPEN "O", dann wird die zuvor mit dieser Prozedur eingestellte Filetyp-Nummer dem File zugewiesen, ( Set_File_Typ(CVIL("TEXT")) bewirkt zum Beispiel, daß alle nachfolgend erzeugten Files vom Typ 'TEXT', also reine ASCII-Files sind). Im Angang finden Sie eine Liste der wichtigsten vordefinierten Filetypen.
Eine genaue Beschreibung der zuvor verwendeten Bezeichnungen finden Sie in "InsideMacIntosh, Files".

FN Get_Quick_Draw liefert einen Zeiger auf die QuickDrawGlobals. Eine genaue Beschreibung dieser Struktur finden Sie in "Inside MacIntosh, Imaging with QuickDraw".

FN Get_G_World_Ptr liefert einen Zeiger auf die Offscreen-Grafics-World, die für die Pufferung des obersten Omikron Basic Ausgabefensters benutzt wird. Die Struktur ist in "Inside MacIntosh, Imaging with QuickDraw" beschrieben.


FN Get_G_World_Ptr(S) liefert einen Zeiger auf die Offscreen-Grafics-World, die für die Pufferung des mit SCREEN S,Breite,Höhe geöffneten Omikron Basic Ausgabefensters benutzt wird. Die Struktur ist in "Inside MacIntosh, Imaging with QuickDraw" beschrieben.

FN Get_Window_Ptr liefert einen Zeiger auf den Window-Pointer des obersten Omikron Basic Ausgabefensters. Die Struktur ist in "Inside MacIntosh, Imaging with QuickDraw" beschrieben.


FN Get_Window_Ptr(S) liefert einen Zeiger auf den Window-Pointer des mit SCREEN S,Breite,Höhe geöffneten Omikron Basic Ausgabefensters. Die Struktur ist in "Inside MacIntosh, Imaging with QuickDraw" beschrieben.

Set_Window_Title(T$) setzt den Titel des obersten Omikron Basic Ausgabefensters auf T$.

Get_Indexed_Color(Index,R Rot,R Grün,R Blau) liefert den Rot-, Grün- und Blauanteil einer Farbe aus der internen Omikron Basic Farbtabelle zurück, deren Index Sie übergeben. Rot, Grün und Blau können Werte zwischen 0 und 65535 annehmen.

Set_Indexed_Color(Index,Rot,Grün,Blau) setzt den Rot-, Grün- und Blauanteil einer Farbe in der internen Omikron Basic Farbtabelle, deren Index Sie übergeben. Rot,Grün und Blau müssen Werte zwischen 0 und 65535 haben.

Set_Pen_Size(Breite,Höhe) setzt Breite und Höhe des Zeichenstiftes, wie er z.B. für DRAW oder BOX verwendet wird. Entspricht LINE WIDTH, nur daß hier Breite und Höhe unterschiedliche Werte annehmen können.

Set_Roundings(X,Y) definiert die Rundung der Ecken bei Verwendung von RBOX und PRBOX. X und Y sind die Halbachsen einer Ellipse, die der Rundung angepasst ist.

Set_Scroll_Parameter(X,Y) definiert die Anzahl der Pixel, um die der Inhalt der Omikron Basic Ausgabefenster verschoben werden soll, wenn die Scroll-Pfeile angeklickt werden. X steht dabei für die horizontale Richtung und Y für die vertikale.

Set_Text_Mode(Modus) setzt den Verknüpfungsmodus wie bei MODE nur speziell für TEXT-Befehle.

Set_Text_Size(Size) entspricht dem Befehl TEXT HEIGHT, stellt also die Größe der mit TEXT-Befehlen ausgegebenen Zeichen ein.

Set_Text_Font(Font_Nr) wählt den Font aus, der für TEXT-Befehle benutzt werden soll.

Set_Text_Face(Face) entspricht dem Befehl TEXT STYLE, stellt also den Schriftstil der mit TEXT-Befehlen ausgegebenen Zeichen ein.

Set_Text_Fore_Color(Index) entspricht dem Befehl TEXT COLOR, setzt also die für TEXT-Befehle verwendete Farbe auf die Index zugeordnete Farbe.

Set_Text_Back_Color(Index) setzt die für TEXT-Befehle verwendete Hintergrundfarbe auf die Index zugeordnete Farbe.

Set_Print_Mode(Modus) setzt den Verknüpfungsmodus wie bei MODE nur speziell für PRINT- und INPUT-Befehle.

Set_Print_Size(Size) stellt die Größe der mit PRINT- und INPUT-Befehlen ausgegebenen Zeichen ein.

Set_Print_Font(Font_Nr) wählt den Font aus, der für PRINT- und INPUT-Befehle benutzt werden soll.

Achtung: Der PRINT- und INPUT-Befehl funtionieren nur mit nichtproportionalen Fonts korrekt, also Fonts, bei denen alle Buchstaben gleich breit sind. Von den standardmäßig vorhandenen Fonts trift das nur auf 'Monaco (Font_Nr=4)' und 'Courier (Font_Nr=22)' zu.

Set_Print_Face(Face) entspricht in etwa dem Befehl TEXT STYLE. Die Einstellung gilt aber nur für PRINT- und INPUT-Befehle.

Set_Print_Fore_Color(Index) setzt die für PRINT- und INPUT-Befehle verwendete Farbe auf die Index zugeordnete Farbe.

Set_Print_Back_Color(Index) setzt die für PRINT- und INPUT-Befehle verwendete Hintergrund-Farbe auf die Index zugeordnete Farbe.

Set_Lprint_Mode(Modus) setzt den Verknüpfungsmodus wie bei MODE nur speziell für LPRINT-Befehle.

Set_Lprint_Size(Size) stellt die Größe der mit LPRINT-Befehlen ausgegebenen Zeichen ein.

Set_Lprint_Font (Font_Nr) wählt den Font aus, der für LPRINT-Befehle benutzt werden soll.

Achtung: Der LPRINT-Befehl funtioniert nur mit nichtproportionalen Fonts korrekt, also Fonts, bei denen alle Buchstaben gleich breit sind, wenn Tabulatorfunktionen benutzt werden. Von den standardmäßig vorhandenen Fonts trift das nur auf 'Monaco (Font_Nr=4)' und 'Courier (Font_Nr=22)' zu.

Set_Lprint_Face(Face) entspricht in etwa dem Befehl TEXT STYLE, die Einstellung gilt aber nur für LPRINT-Befehle.

Set_Lprint_Fore_Color(Index) setzt die für LPRINT-Befehle verwendete Farbe auf die Index zugeordnete Farbe.

Set_Lprint_Back_Color(Index) setzt die für LPRINT-Befehle verwendete Hintergrund-Farbe auf die Index zugeordnete Farbe.

Lprstldialog(R Button) stellt die 'PrStlDialog' Dialogbox des Druckertreibers dar. Wurde die Box mit OK verlassen, so ist Button=1, sonst 0.

Lprjobdialog(R Button) stellt die 'PrJobDialog' Dialogbox des Druckertreibers dar. Wurde die Box mit OK verlassen, so ist Button=1, sonst 0.

Funktionen zur Umwandlung von Fließkommazahlen in Strings und umgekehrt

Das Fließkommazahlenformat, das vom Omikron Basic für Atari-Computer benutzt wurde, unterscheidet sich von dem für den PowerPC verwendeten. Um nun eine ständige Formatkonvertierung mit entsprechendem Performanceverlust zu vermeiden, wurde das neue Omikron Basic auf das PowerPC-Format umgestellt (siehe auch das Kapitel 'Unterschiede zur Atari-Version').

Damit Sie Ihre alten Programme leichter umstellen können, gibt es vier Funktionen in der Extension-Library, die das Verhalten der alten Omikron Basic Funktionen nachbilden.

FN CVS#(Single$) wandelt einen 6-Byte-String im alten Format in eine Zahl doppelter Genauigkeit.

Achtung: Da das neue Format einen kleineren Wertebereich hat, als das alte, kann es bei sehr kleinen bzw. sehr großen Zahlen zu Fehlern kommen.

FN CVD#(Double$) wandelt einen 10-Byte-String im alten Format in eine Zahl doppelter Genauigkeit.

Achtung: Da das neue Format einen kleineren Wertebereich hat, als das alte, kann es bei sehr kleinen bzw. sehr großen Zahlen zu Fehlern kommen.

FN MKS$(Zahl) : wandelt eine Zahl in einen 6-Byte langen String im alten Format um.

FN MKD$(Zahl) : wandelt eine Zahl in einen 10-Byte langen String im alten Format um.


Linienstiltabelle blättern Weitere Libraries für Omikron Basic

Inhaltsverzeichnis

copyright 1998
Berkhan Software